package com.ptswitch.material.pages.bom;

import org.apache.tapestry5.EventConstants;
import org.apache.tapestry5.annotations.OnEvent;
import org.apache.tapestry5.ioc.annotations.Inject;

import com.ptswitch.material.model.material.Bom;
import com.ptswitch.material.pages.base.PageBase;
import com.ptswitch.material.service.BomService;
import com.ptswitch.material.util.HlogConstants;
import com.ptswitch.material.util.WebUtil;
import com.ptswitch.material.util.security.PermissionUtil;

public class DeleteBom extends PageBase {

    @Inject
    private BomService bomSer;

    @OnEvent(value = EventConstants.ACTIVATE)
    Object delete(long id) {
        checkPermitted(PermissionUtil.BomDelete);
        Bom bom = bomSer.findById(id);
        WebUtil.delete(bom.getOrigFile());
        bomSer.delete(bom);
        hlog(HlogConstants.deleteBom, bom);
        return ListBom.class;
    }
}
